package com.lining.orangeservice.entity.dto;

import lombok.Data;
import java.util.List;

@Data
public class LoginResponse {
    private String token;
    private String tokenType = "Bearer";
    private Long expiresIn;
    private UserInfo userInfo;
    
    @Data
    public static class UserInfo {
        private Long id;
        private String username;
        private String nickname;
        private String email;
        private String phone;
        private String avatar;
        private List<RoleInfo> roles;
        private List<MenuInfo> permissionTree;
        private List<String> permissions;
    }
    
    @Data
    public static class RoleInfo {
        private Long id;
        private String roleName;
        private String roleCode;
    }
    
    @Data
    public static class MenuInfo {
        private Long id;
        private String name;
        private String code;
        private Integer type;
        private String path;
        private String component;
        private String icon;
        private Integer sort;
        private Integer status;
        private List<MenuInfo> children;
    }
}